Matthias Clasen [Tue, 10 Oct 2017 04:18:21 +0000 (00:18 -0400)]
Reshuffle the css tests a bit
Matthias Clasen [Tue, 10 Oct 2017 04:16:10 +0000 (00:16 -0400)]
Reshuffle the a11y tests a bit
Matthias Clasen [Tue, 10 Oct 2017 04:14:48 +0000 (00:14 -0400)]
Add an install-tests option
Use this to enable or disable installed tests.
Matthias Clasen [Tue, 10 Oct 2017 03:35:19 +0000 (23:35 -0400)]
Install css api test again
Matthias Clasen [Tue, 10 Oct 2017 03:32:13 +0000 (23:32 -0400)]
Install css style tests again
Reinstate the installed tests for css style.
Matthias Clasen [Tue, 10 Oct 2017 03:29:10 +0000 (23:29 -0400)]
Install css parser tests again
Reinstate the installed tests for the css parser.
Matthias Clasen [Tue, 10 Oct 2017 03:24:23 +0000 (23:24 -0400)]
Install css node tests again
Reinstate the installed tests for css nodes.
Matthias Clasen [Tue, 10 Oct 2017 01:58:50 +0000 (21:58 -0400)]
Fix docs build
this include file can't be found, so just do without it.
Matthias Clasen [Mon, 9 Oct 2017 23:35:40 +0000 (19:35 -0400)]
Towards a working docs build
Add back images, content_files and expand_content files.
Anders Jonsson [Mon, 9 Oct 2017 23:19:22 +0000 (23:19 +0000)]
Update Swedish translation
Matthias Clasen [Mon, 9 Oct 2017 23:06:06 +0000 (19:06 -0400)]
Towards a working docs build
Pass mode: 'none' so escaping of <> in doc comments works.
Marek Cernocky [Mon, 9 Oct 2017 19:32:02 +0000 (21:32 +0200)]
Updated Czech translation
Matej Urbančič [Mon, 9 Oct 2017 18:54:24 +0000 (20:54 +0200)]
Updated Slovenian translation
Piotr Drąg [Mon, 9 Oct 2017 18:42:22 +0000 (20:42 +0200)]
Update Polish translation
Piotr Drąg [Sat, 7 Oct 2017 23:05:22 +0000 (01:05 +0200)]
gdk: Translate some more key names
These are used in the Keyboard panel of GNOME Settings.
https://bugzilla.gnome.org/show_bug.cgi?id=787866
Marek Kasik [Wed, 30 Aug 2017 15:56:00 +0000 (17:56 +0200)]
printing: Don't show duplicate printers
Check UUID for printers obtained via DNSSD whether
they are already installed on local CUPS server.
Don't show such printers.
Not all printers published via DNSSD have UUID entry though.
https://bugzilla.gnome.org/show_bug.cgi?id=786794
Matthias Clasen [Mon, 9 Oct 2017 03:19:35 +0000 (23:19 -0400)]
Add a transform node reftest
Matthias Clasen [Mon, 9 Oct 2017 02:45:05 +0000 (22:45 -0400)]
Add another cross-fade reftest
Matthias Clasen [Mon, 9 Oct 2017 02:19:22 +0000 (22:19 -0400)]
snapshot: Use a better placeholder
An empty container has the same effect as transparency
with the cairo renderer, but creates black with Vulkan.
To avoid this, explicitly use a transparent color node.
This fixes the css blendmode example in gtk4-demo with
the Vulkan renderer.
Matthias Clasen [Mon, 9 Oct 2017 01:13:43 +0000 (21:13 -0400)]
Regenerate blendmodes reftest
Matthias Clasen [Mon, 9 Oct 2017 01:12:22 +0000 (21:12 -0400)]
Fix blendmode shader
My reading of the spec formulas was imperfect.
Matthias Clasen [Mon, 9 Oct 2017 00:06:33 +0000 (20:06 -0400)]
Revise coordinate handling for blend nodes
This is the same change that was applied to cross-fade
nodes.
Matthias Clasen [Mon, 9 Oct 2017 00:05:16 +0000 (20:05 -0400)]
Stop using gsk_cairo_node_new_for_surface
Best to avoid handling the surface ourselves.
Matthias Clasen [Sun, 8 Oct 2017 23:21:09 +0000 (19:21 -0400)]
Add another blendmodes reftest
This tests all blendmodes. Again, the Vulkan renderer fails.
Matthias Clasen [Sun, 8 Oct 2017 22:36:57 +0000 (18:36 -0400)]
Revise the coordinate handling one more time
This makes the new reftests pass and hopefully does not
break other things.
Daniel Boles [Sun, 8 Oct 2017 21:19:13 +0000 (22:19 +0100)]
Dialog: Clarify that response ID 0 is not reserved
I only got so far in math, but it looks to me like zero isn’t positive.
We don’t reserve it, so be clear about that.
Daniel Boles [Sun, 8 Oct 2017 20:07:55 +0000 (21:07 +0100)]
MenuButton: Document the correct no-direction icon
Document open-menu-symbolic, which we use, not view-context-menu, which
does not exist.
Matthias Clasen [Sun, 8 Oct 2017 18:36:35 +0000 (14:36 -0400)]
Add a cross-fade node ref test
The Vulkan renderer doesn't pass this one either, currently.
Matthias Clasen [Sun, 8 Oct 2017 18:29:27 +0000 (14:29 -0400)]
Add a blendmode node reftest
The Vulkan renderer doesn't pass this, currently.
Matthias Clasen [Sun, 8 Oct 2017 18:03:19 +0000 (14:03 -0400)]
Fix application window snapshot differently
As Timm Baedert pointed out, the previous fix made the
menubar go on top of popovers, which is just wrong. Instead,
make gtk_window_snapshot handle all direct children of the
window, taking care to stack popovers correctly.
Matthias Clasen [Sun, 8 Oct 2017 17:49:59 +0000 (13:49 -0400)]
Expand the repeat node test
Still not exhaustive, but enough to find some issues.
Matthias Clasen [Sun, 8 Oct 2017 16:21:03 +0000 (12:21 -0400)]
Add a repeat node test
Matthias Clasen [Sun, 8 Oct 2017 15:51:00 +0000 (11:51 -0400)]
Add a basic cairo node test
Matthias Clasen [Sun, 8 Oct 2017 15:24:37 +0000 (11:24 -0400)]
Allow backend-specific reference images
This is not ideal, but lets us deal with differences for now.
Matthias Clasen [Sun, 8 Oct 2017 15:26:53 +0000 (11:26 -0400)]
vulkan: Fix cross-fade node coordinates
This is the same fix as was just committed for blendmode nodes.
Matthias Clasen [Sun, 8 Oct 2017 13:00:56 +0000 (09:00 -0400)]
vulkan: Fix blendmode coordinate handling
We were node handling coordinates correctly when dealing
with differently sized child nodes in a blendmode node.
This was showing up in the gtk4-demo css blendmode example,
for blendmodes other than normal.
Matthias Clasen [Sun, 8 Oct 2017 12:44:02 +0000 (08:44 -0400)]
vulkan: Fix repeat node coordinates
We were not treating non-trivial child bounds right at all.
This was visible in the css blendmode cmyk example in gtk4-demo,
for the normal blendmode.
Matthias Clasen [Sun, 8 Oct 2017 12:43:03 +0000 (08:43 -0400)]
inspector: Show child bounds for repeat nodes
The more information, the better.
Umang Jain [Fri, 6 Oct 2017 18:26:54 +0000 (23:56 +0530)]
Create tests for cairo node
https://bugzilla.gnome.org/show_bug.cgi?id=788534
Umang Jain [Fri, 6 Oct 2017 18:25:59 +0000 (23:55 +0530)]
gsk: Move gsk_cairo_node_new_for_surface into public API
https://bugzilla.gnome.org/show_bug.cgi?id=788534
Umang Jain [Wed, 4 Oct 2017 21:02:02 +0000 (02:32 +0530)]
gsk: Fix serialization of cairo node
https://bugzilla.gnome.org/show_bug.cgi?id=788534
Daniel Boles [Sun, 8 Oct 2017 12:15:33 +0000 (13:15 +0100)]
testmenubutton: Fix inverted keynav in the GtkMenu
GtkMenu’s own keynav code, which actually bothers to account for the
layout of items, only happens if columns > 1. So, adding items to 1
column using a reverse loop meant they were placed in the Menu’s list of
children in that order, and because we only have 1 column, Menu passes
keynav up to MenuShell, which doesn’t adjust for the items’ positions.
‘Fix’ that here by adding items in the same order they’ll have when laid
out in the Menu, so keynav does what you’d expect, not the opposite. For
that, it’s simpler just to use gtk_container_add().
Let’s presume users are using add(), attach() with a non-inverted loop,
or attach() with arguments that create 2+ columns and so GtkMenu keynav.
Timm Bäder [Sun, 8 Oct 2017 06:28:35 +0000 (08:28 +0200)]
snapshot: Set blend mode directly after pushing state
This is important since _push_state returns a pointer into a GArray
which could be invalidated and point to garbage after the subsequent
push_state call.
Matthias Clasen [Sun, 8 Oct 2017 03:31:47 +0000 (23:31 -0400)]
snapshot: Fix blend mode handling
We were getting out states confused and were always creating
a blend mode node with mode NORMAL.
Matthias Clasen [Sun, 8 Oct 2017 03:26:57 +0000 (23:26 -0400)]
gtk4-demo: fix a typo
The blend mode is called saturation, not saturate.
Matthias Clasen [Sun, 8 Oct 2017 02:45:49 +0000 (22:45 -0400)]
Adwaita: theme the shortcuts window search results
Add some margins, and, since we can, also move the spacing here.
Matthias Clasen [Sun, 8 Oct 2017 02:45:05 +0000 (22:45 -0400)]
Shortcuts window: Make search results themable
Add a style class to the box containing search results,
so we can apply style here.
Matthias Clasen [Sun, 8 Oct 2017 02:24:09 +0000 (22:24 -0400)]
application window: Make menubar appear
This needed to be ported to snapshot, still.
Matthias Clasen [Sun, 8 Oct 2017 00:13:13 +0000 (20:13 -0400)]
Adwaita: theme shortcuts windows a bit
Add some space around the content.
Matthias Clasen [Sun, 8 Oct 2017 00:12:18 +0000 (20:12 -0400)]
shortcuts: Add css names to some widgets
This will let us put some styling in place for these.
Matthias Clasen [Sat, 7 Oct 2017 23:54:47 +0000 (19:54 -0400)]
gtk4-demo: Fix the scrollbar popup menu example
A scrollbar is not a range anymore, so the callback
needs some adjustments (!).
Matthias Clasen [Sat, 7 Oct 2017 23:53:19 +0000 (19:53 -0400)]
scrollbar: keep populate-popup signal working
This is used for example in the source tab of gtk4-demo.
It broke because GtkScrollbar no longer is a GtkRange,
but rather has one. So we need to forward the signal.
Matthias Clasen [Sat, 7 Oct 2017 23:26:39 +0000 (19:26 -0400)]
notebook: Don't steal right-clicks from content
We only want to pop up the context menu in the tab strip.
Matthias Clasen [Sat, 7 Oct 2017 23:10:58 +0000 (19:10 -0400)]
Adwaita: Fix scrollbar theming a bit
Reinstate the fine-tune mode scrollbars.
Matthias Clasen [Sat, 7 Oct 2017 23:10:10 +0000 (19:10 -0400)]
scrollbar: Correct css docs
The .fine-tune class appears on the range node.
Matthias Clasen [Sat, 7 Oct 2017 22:27:51 +0000 (18:27 -0400)]
Drop the env var for scrolling control
This was never meant to be an official api, but rather
a transition help. Time to drop it for GTK+ 4.
Matthias Clasen [Sat, 7 Oct 2017 03:06:52 +0000 (23:06 -0400)]
textview: Fix memory handling
When cleaning up the text appearance struct, we forgot
to add the new strikethrough_rgba member to the copy
function.
Matthias Clasen [Sat, 7 Oct 2017 02:50:03 +0000 (22:50 -0400)]
printing: Fix page drawing
We were drawing frames around our drawing areas.
Matthias Clasen [Sat, 7 Oct 2017 02:33:24 +0000 (22:33 -0400)]
printing: Some fixes to the print dialog
Hide widgets that are meant to be hidden initially, and use
the right spin button apis.
Matthias Clasen [Sat, 7 Oct 2017 02:32:53 +0000 (22:32 -0400)]
button: Fix label alignment in checks and radios
Yes, this is ugly, but the alternative is broken ui.
Matthias Clasen [Sat, 7 Oct 2017 01:59:34 +0000 (21:59 -0400)]
gtk-demo: Deal with big images
We don't want to grow our window to huge size just because
there is a big source image.
Matthias Clasen [Sat, 7 Oct 2017 01:58:56 +0000 (21:58 -0400)]
gtk-demo: Add a new overlay demo
Replace the not very impressive transparent demo with
the blur-behind example.
Matthias Clasen [Sat, 7 Oct 2017 01:35:21 +0000 (21:35 -0400)]
gtk-demo: Fix the overlay demo
We must make the label and the entry separate overlays, or
the entry will also be clickthru.
Matthias Clasen [Sat, 7 Oct 2017 00:41:30 +0000 (20:41 -0400)]
gtk-demo: Fix up the drawingarea example
This was not working anymore.
Matthias Clasen [Fri, 6 Oct 2017 23:48:03 +0000 (19:48 -0400)]
gtk-demo: Make the color chooser example non-resizable
No need for it.
Daniel Boles [Sat, 7 Oct 2017 00:27:05 +0000 (01:27 +0100)]
HC: Avoid inflated titlebar separator in GEdit etc
It was selecting paned separator, which means any separator at any level
of descent within a paned, including the toplevel container in GEdit.
We need to be more specific and only select the relevant separator that
is the direct child of the paned. This is what Adwaita does.
https://bugzilla.gnome.org/show_bug.cgi?id=788573
Daniel Boles [Fri, 6 Oct 2017 19:24:49 +0000 (20:24 +0100)]
TreeViewCol: Fix SEGV on remove/add, + memory leak
Nulling priv->button in _unset_tree_view() is asymmetrical: we create
it via init(), not _set_tree_view(), so we shouldn’t null in the latter.
Worse, doing so manifests in criticals + a SEGV easily with basic use of
testtreecolumns, removing the TVC from a TV then trying to add it to one
Finally, the wrong null-out meant dispose() failed to unref the button,
so it leaked.
https://bugzilla.gnome.org/show_bug.cgi?id=728452
https://bugzilla.gnome.org/show_bug.cgi?id=788614
Daniel Boles [Fri, 6 Oct 2017 19:24:01 +0000 (20:24 +0100)]
TreeViewCol: Don’t try to disconnect null treeview
https://bugzilla.gnome.org/show_bug.cgi?id=788614
Daniel Boles [Fri, 6 Oct 2017 19:40:59 +0000 (20:40 +0100)]
Revert "treeviewcolumn: Don't leak button"
This reverts commit
2c28c627c1527d4ee2dfc4d3805f7afc482049e2.
See following commits: the real problem is setting priv->button to NULL
soon after this, so this just makes that wrong decision look more right.
https://bugzilla.gnome.org/show_bug.cgi?id=788614
Daniel Boles [Fri, 6 Oct 2017 18:32:50 +0000 (19:32 +0100)]
iconbrowser: Don’t repeat folder-download-symbolic
It was in both [general] with a description and [other] with none.
Leave it in [other] with the other folder- icons, + the description.
bonus: this makes all of [general] fit in our default window size!
Daniel Boles [Fri, 6 Oct 2017 23:09:09 +0000 (00:09 +0100)]
FileChooserButton: Avoid unref()ing a null model
Matthias Clasen [Fri, 6 Oct 2017 23:38:16 +0000 (19:38 -0400)]
gtk-demo: Fix the assistant demo
The progress bar was no longer expanding as intended,
due to the demise of GtkBox::expand.
Matthias Clasen [Fri, 6 Oct 2017 23:30:27 +0000 (19:30 -0400)]
settings: Don't assert in notify
We can legitimately hit the default case in this switch,
so don't assert that we don't.
Matthias Clasen [Fri, 6 Oct 2017 23:29:42 +0000 (19:29 -0400)]
gskrenderer: Make the window property not construct
We never set this, since it is assigned as a side-effect
of realizing the renderer. Make this a plain readonly property.
Matthias Clasen [Fri, 6 Oct 2017 22:29:00 +0000 (18:29 -0400)]
vulkan: Add some missing cases to switch
Benjamin Otte [Fri, 6 Oct 2017 19:19:42 +0000 (21:19 +0200)]
build: Enable -Wswitch-enum and -Wswitch-default
This patch makes that work using 1 of 2 options:
1. Add all missing enums to the switch statement
or
2. Cast the switch argument to a uint to avoid having to do that (mostly
for GdkEventType).
I even found a bug while doing that: clearing a GtkImage with a surface
did not notify thae surface property.
The reason for enabling this flag even though it is tedious at times is
that it is very useful when adding values to an enum, because it makes
GTK immediately warn about all the switch statements where this enum is
relevant.
And I expect changes to enums to be frequent during the GTK4 development
cycle.
Benjamin Otte [Fri, 6 Oct 2017 14:13:45 +0000 (16:13 +0200)]
build: Turn on more warning flags
-Wshadow these days does not overwarn anymore like it did in gcc 4.
There are no warnings inside gtk, so better enable it to keep it that
way.
-Wuninitialized also has no positives, so I'm gonna turn it on just
because.
Matthias Clasen [Fri, 6 Oct 2017 18:21:19 +0000 (14:21 -0400)]
gtk-demo: Keep treeviews expanding
This is fallout from GtkBox::expand child property going away.
Carlos Garnacho [Fri, 6 Oct 2017 16:12:03 +0000 (18:12 +0200)]
gtktreeview: Transform cell area to widget coordinates
GtkCellArea uses event coordinates (thus in treeview relative
coordinates), but calculations used to happen in bin window coords.
We can just offset the cell area by the bin window, fixes cell
renderer activation and edition.
Carlos Garnacho [Fri, 6 Oct 2017 16:06:56 +0000 (18:06 +0200)]
treeviewcolumn: Don't swallow motion/crossing events
If the column is not clickable, it may make some sense to stop
event propagation here for button events. However motion events
should be left alone.
Fixes treeview column resize pointer cursors, since that's
implemented up the bubbling phase in the treeview.
Carlos Garnacho [Fri, 6 Oct 2017 14:50:29 +0000 (16:50 +0200)]
treeview: Transform motion event coords to "bin window" coords
The operations rely there on bin window relative coordinates, but we
are receiving GtkTreeView relative coordinates there. Fixes clicking
on treeview expanders, which was offset by visible headers.
Timm Bäder [Fri, 6 Oct 2017 15:35:28 +0000 (17:35 +0200)]
modelbutton: set_relative_to(NULL) the popover in dispose
We do set_relative_to(menu_button) when creating it so we should do this
here (or nothing).
Timm Bäder [Fri, 6 Oct 2017 15:23:34 +0000 (17:23 +0200)]
treeviewcolumn: Don't leak button
We g_object_ref_sink the button in _create_button, so we need to unref
it ourselves.
Timm Bäder [Fri, 6 Oct 2017 15:14:31 +0000 (17:14 +0200)]
filechooserbutton: Don't leak priv->model
Timm Bäder [Fri, 6 Oct 2017 14:30:31 +0000 (16:30 +0200)]
applicationwindw: Don't leak show-help-overlay action
Timm Bäder [Fri, 6 Oct 2017 14:30:20 +0000 (16:30 +0200)]
widget-factory: Don't leak GPropertyAction instances
Benjamin Otte [Fri, 6 Oct 2017 14:01:19 +0000 (16:01 +0200)]
build: Don't turn off critical warnings
-Wint-conversion is important because it checks casts from ints to
pointers.
-Wdiscarded-qualifiers is important to catch cases where we don't
strings when we should.
Benjamin Otte [Sat, 30 Sep 2017 18:56:34 +0000 (20:56 +0200)]
gtk-demo: Remove old build file
The includes are now generated with a Python script, so remvoe the old
perl script.
Benjamin Otte [Sat, 30 Sep 2017 18:44:33 +0000 (20:44 +0200)]
build: Remove old Makefile.inc files
They seem to have been forgotten in the meson transition
Piotr Drąg [Fri, 6 Oct 2017 13:55:55 +0000 (15:55 +0200)]
Update Polish translation
Matthias Clasen [Thu, 5 Oct 2017 17:30:55 +0000 (13:30 -0400)]
Some updates
Timm Bäder [Fri, 6 Oct 2017 11:51:17 +0000 (13:51 +0200)]
Widget: make sure windowed widgets have a 1×1 min size
Timm Bäder [Fri, 6 Oct 2017 09:16:35 +0000 (11:16 +0200)]
widget: Allow 0×0 allocations
Don't MAX the allocations with 1 anymore.
Timm Bäder [Fri, 6 Oct 2017 09:15:38 +0000 (11:15 +0200)]
searchbar: Remove superfluous padding
So it's not 6px high when the child revealer is concealed.
Timm Bäder [Fri, 6 Oct 2017 12:24:52 +0000 (14:24 +0200)]
box: Drop priv pointer
Timm Bäder [Fri, 6 Oct 2017 08:40:23 +0000 (10:40 +0200)]
image: Remove mention on gdk-pixbuf-csource
gdk-pixbuf-csource as well as gdk_pixbuf_new_from_inline are deprecated.
Mention GResource instead.
Daniel Boles [Fri, 6 Oct 2017 01:32:37 +0000 (02:32 +0100)]
HC: Add border/hilight when hovering flat buttons
The border and icon highlight are useful feedback that was defeated by
CSS precedence. It worked for .titlebuttons due to their implementation,
but the same was not true for custom .flat buttons. This makes it so.
https://bugzilla.gnome.org/show_bug.cgi?id=788580
Daniel Boles [Fri, 6 Oct 2017 01:15:59 +0000 (02:15 +0100)]
HC: Flat titlebuttons became non-flat in backdrop
When the window was backdropped, they suddenly regained their border.
This was clearly not intentional or of any practical use to anyone.
Shuffle around some selectors so that the backdrop ones do not override
the flat ones and make the borders magically reappear when backdropped.
Note that, whereas standard titlebuttons get the border on :hover, other
.flat buttons in the headerbar do not. That should probably be fixed too
https://bugzilla.gnome.org/show_bug.cgi?id=788580
Daniel Boles [Thu, 5 Oct 2017 23:36:01 +0000 (00:36 +0100)]
HighContrastInverse: Make window borders visible
They were hard-coded to a transparent black, but that is our bg colour
in HC Inverse, so windows stacked on top of each other or a dark
background blended together into a mush.
Fix this by making the $_wm_border* colours relative to the fg colour,
so that HighContrastInverse gets borders that are transparentised white.
https://bugzilla.gnome.org/show_bug.cgi?id=788575
Daniel Boles [Thu, 5 Oct 2017 23:20:25 +0000 (00:20 +0100)]
HC: Fix MessageDialog’s rounded bottom borders
A missing decoration selector meant that we got a solid black background
behind the rounded corners of the dialog.
Copy the equivalent code from Adwaita, including nicely rounding the
focus outline too (& sorry, but this needs more newlines to be readable)